package com.test.springCloud.service;

import org.springframework.web.multipart.MultipartFile;

import com.alibaba.fastjson.JSONObject;

/**
 * 
 * @date 2021年5月28日上午10:13:15
 * @author XiaoHuang
 *
 */

public interface UploadImgService {

	/**
	 * [多张图片上传]
	 * 
	 * @param file
	 * @return successCount 上传成功的个数 uploadCount 上传的个数 data 返回的数据（这里的路径）
	 */
	JSONObject uploadAndStoreLocalfaceAttendanceOtherImg(MultipartFile[] file);

	/**
	 * [单张图片上传]
	 * 返回形如{"code":200,"data":{"remotePicUri":"http://img.yishun618.com/platform_manger/Default/original/20210812/7ff9b2b4-88b9-4871-8ff7-ca0363c2cd73.png"},"message":"成功"}
	 * 
	 * @param file
	 * @return
	 */
	JSONObject uploadAndStoreLocalfaceAttendanceOtherImg(MultipartFile file);

	/**
	 * [多张图片上传]
	 * 
	 * @param file
	 * @return successCount 上传成功的个数 uploadCount 上传的个数 data 返回的数据（这里的路径）
	 */
	JSONObject uploadAndStoreDefaultImgToWeb(MultipartFile[] file);

	/**
	 * [单张图片上传] 上传和保存图片，默认地址
	 * 返回形如{"code":200,"data":{"remotePicUri":"http://img.yishun618.com/platform_manger/Default/original/20210812/7ff9b2b4-88b9-4871-8ff7-ca0363c2cd73.png"},"message":"成功"}
	 * 
	 * @param file
	 * @return
	 */
	JSONObject uploadAndStoreDefaultImgToWeb(MultipartFile file);

	/**
	 * [多张图片上传]
	 * 
	 * @param file
	 * @return successCount 上传成功的个数 uploadCount 上传的个数 data 返回的数据（这里的路径）
	 */
	JSONObject uploadAndStoreDefaultImgToWebIndex(MultipartFile[] file);

	/**
	 * [单张图片上传]
	 * @param file
	 * @return
	 */
	JSONObject uploadAndStoreDefaultImgToWebIndex(MultipartFile file);

	// 保存图片(服务端操作，上传图片调用上面那个imgService.uploadAndStoreDefaultImgToWeb(file)即可，如果调用本方法是直接保存到本地的)
	// 默认位置
	String storeLocalDefaultImg(MultipartFile file);

	String storeCrsLocalDefaultImg(MultipartFile file);

	// 保存人脸机考勤及其他图片(服务端操作，上传图片调用上面那个imgService.uploadAndStoreDefaultImgToWeb(file)即可，如果调用本方法是直接保存到本地的)
	// 默认位置
	String storeLocalfaceAttendanceOtherImg(MultipartFile file);

	// 保存图片(服务端操作，上传图片调用上面那个imgService.uploadAndStoreDefaultImgToWeb(file)即可，如果调用本方法是直接保存到本地的)
	// 例 --> customFolder :"\\platform_manger\\Default\\original"
	// 自定义文件夹位置
	String storeLocalCustomImg(MultipartFile file, String customFolder);

	// 上传图片，第一个参数是服务器的文件夹地址，第二个参数是base64（可以传入 ..
	// 也可以就是aQk0m..）
	String uploadImg(String customPath, String pic64);

	// 过滤确认base64
	JSONObject filterToConfirm(String pic64);

	/**
	 * [多张图片上传] 上传和保存图片，平台其他照片地址
	 * 
	 * @param file
	 * @return successCount 上传成功的个数 uploadCount 上传的个数 data 返回的数据（这里的路径）
	 */
	JSONObject uploadAndStoreOtherImgToWebIndex(MultipartFile[] file);
}
